Computer architecture platforms are susceptible to various types of attacks that attempt to gain unauthorized access to data and/or platform resources. Technological improvements in security functions and hardware of sophisticated systems have provided some level of resistance to direct attacks. As a result, attackers often pursue side-channel techniques to gain access to sophisticated systems. In general, a side-channel attack attempts to obtain metadata available in various system components to deduce what a specific process is computing. For example, such attacks have been used to find encryption keys and user passwords. Side-channel attacks may be based on inter-process leakage through the state of a system processor memory cache. For example, a side-channel attack may access metadata that can be used to learn the secret keys that are obtained from a physical implementation of a cryptosystem. The metadata may include timing information or power consumption. For example, a timing attack is a form of side-channel attack based on measuring how much time it takes to process different inputs, for example, due to performance optimizations to bypass unnecessary operations, branching, cache memory and operations (for example, multiplication and division) that run in a non-fixed time. Conventional side-channel attack countermeasures, such as cache coloring and dynamic cache size partitioning, have become less effective and incur unacceptably-high performance overheads.